package com.iad.core;

import java.util.Map;

import javax.servlet.ServletContext;
import javax.sql.DataSource;

import org.apache.commons.logging.Log;

/**
 *  This class contains all core storage.
 * @author Nick Sophinos
 *  
 */

public class Core {

  private static DataSource dbConnectionPool;

  private static ServletContext servletContext;

  private static Map validResourceClassMap;

  private static String errorNotificationRecipients;

  private static String emailTestRecipients;
  
  private static String adminUser;
  
  private static String adminPassword;

  private static int pollId;

  public static String sslCertPath;

  public static String validLogin;

  public static String validPassword;

  public static String timeZone;

  public static String mailServer;

  public static String mailAuthenticationUser;

  public static String mailAuthenticationPassword;

  public static String newsfeedUrl;

  public static String pollSelectionStartDelayMilliseconds;

  public static String pollSelectionStartRepeatMinutes;

  public static String slideBuilderBaseUrl;
  
  public static String slideBuilderBaseDir;

  public static String slideBuilderPptDir;

  
  public static Log logger;
  
  
  public static String getAdminUser() {
    return adminUser;
  }

  public static void setAdminUser(String adminUser) {
    Core.adminUser = adminUser;
  }

  public static String getAdminPassword() {
    return adminPassword;
  }

  public static void setAdminPassword(String adminPassword) {
    Core.adminPassword = adminPassword;
  }

  public static DataSource getDbConnectionPool() {
    return dbConnectionPool;
  }

  public static void setDbConnectionPool(DataSource dbConnectionPool) {
    Core.dbConnectionPool = dbConnectionPool;
  }

  public static ServletContext getServletContext() {
    return servletContext;
  }

  public static void setServletContext(ServletContext servletContext) {
    Core.servletContext = servletContext;
  }

  public static Map getValidResourceClassMap() {
    return validResourceClassMap;
  }

  public static void setValidResourceClassMap(Map validResourceClassMap) {
    Core.validResourceClassMap = validResourceClassMap;
  }

  public static String getSSLCertPath() {
    return sslCertPath;
  }

  public static void setSSLCertPath(String sslCertPath) {
    Core.sslCertPath = sslCertPath;
  }

  public static String getErrorNotificationRecipients() {
    return errorNotificationRecipients;
  }
  
  public static void setErrorNotificationRecipients(
      String errorNotificationRecipients) {
    Core.errorNotificationRecipients = errorNotificationRecipients;
  }

  public static String getEmailTestRecipients() {
    return emailTestRecipients;
  }

  
  public static void setEmailTestRecipients(
      String emailTestRecipients) {
    Core.emailTestRecipients = emailTestRecipients;
  }

  public static String getValidLogin() {
    return validLogin;
  }

  public static void setValidLogin(String validLogin) {
    Core.validLogin = validLogin;
  }

  public static String getValidPassword() {
    return validPassword;
  }

  public static void setValidPassword(String validPassword) {
    Core.validPassword = validPassword;
  }

  public static String getTimeZone() {
    return timeZone;
  }

  public static void setTimeZone(String timeZone) {
    Core.timeZone = timeZone;
  }

  public static String getMailServer() {
    return mailServer;
  }

  public static void setMailServer(String mailServer) {
    Core.mailServer = mailServer;
  }

  public static String getMailAuthenticationUser() {
    return mailAuthenticationUser;
  }

  public static void setMailAuthenticationUser(String mailAuthenticationUser) {
    Core.mailAuthenticationUser = mailAuthenticationUser;
  }

  public static String getMailAuthenticationPassword() {
    return mailAuthenticationPassword;
  }

  public static void setMailAuthenticationPassword(
      String mailAuthenticationPassword) {
    Core.mailAuthenticationPassword = mailAuthenticationPassword;
  }

  public static String getNewsfeedUrl() {
    return newsfeedUrl;
  }

  public static void setNewsfeedUrl(String newsfeedUrl) {
    Core.newsfeedUrl = newsfeedUrl;
  }

  public static String getPollSelectionStartDelayMilliseconds() {
    return pollSelectionStartDelayMilliseconds;
  }

  public static void setPollSelectionStartDelayMilliseconds(
      String pollSelectionStartDelayMilliseconds) {
    Core.pollSelectionStartDelayMilliseconds = pollSelectionStartDelayMilliseconds;
  }

  public static String getPollSelectionStartRepeatMinutes() {
    return pollSelectionStartRepeatMinutes;
  }

  public static void setPollSelectionStartRepeatMinutes(
      String pollSelectionStartRepeatMinutes) {
    Core.pollSelectionStartRepeatMinutes = pollSelectionStartRepeatMinutes;
  }

  public static int getPollId() {
    return pollId;
  }

  public static void setPollId(int pollId) {
    Core.pollId = pollId;
  }

  public static String getSlideBuilderBaseUrl() {
    return slideBuilderBaseUrl;
  }

  public static void setSlideBuilderBaseUrl(String slideBuilderBaseUrl) {
    Core.slideBuilderBaseUrl = slideBuilderBaseUrl;
  }
  
  public static String getSlideBuilderBaseDir() {
    return slideBuilderBaseDir;
  }
  
  public static void setSlideBuilderBaseDir(String slideBuilderBaseDir) {
    Core.slideBuilderBaseDir = slideBuilderBaseDir;
  }
  
  public static String getSlideBuilderPptDir() {
    return slideBuilderPptDir;
  }
  
  public static void setSlideBuilderPptDir(String slideBuilderPptDir) {
    Core.slideBuilderPptDir = slideBuilderPptDir;
  }
  
  public static String getSslCertPath() {
    return sslCertPath;
  }
  
  public static void setSslCertPath(String sslCertPath) {
    Core.sslCertPath = sslCertPath;
  }
  
  public static Log getLogger() {
    return logger;
  }

  public static void setLogger(Log logger) {
    Core.logger = logger;
  }

}
